Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR continues the repo-wide move away from tox by removing tox-based CI scripts/variables and switching remaining usage to azpysdk-based check execution.
Changes:
- Replaces tox invocations/variables in pipeline templates with
azpysdk/checksterminology (e.g.,ToxTestEnv→CheckEnv,toxenv→checks). - Deletes legacy tox dispatch/harness scripts and removes related helper logic.
- Removes
toxfrom tooling requirement files and theazure-sdk-toolsoptional dependency list.
Reviewed changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| sdk/cosmos/cosmos-staging.yml | Switches Cosmos staging job from tox to azpysdk whl. |
| scripts/devops_tasks/tox_harness.py | Deletes legacy tox harness implementation. |
| scripts/devops_tasks/dispatch_tox.py | Deletes legacy tox dispatch entrypoint. |
| eng/tools/azure-sdk-tools/pyproject.toml | Removes tox from the sdkgenerator extra. |
| eng/tools/azure-sdk-tools/packaging_tools/package_utils.py | Updates breaking-change invocation to use azpysdk. |
| eng/tools/azure-sdk-tools/gh_tools/vnext_issue_creator.py | Updates issue template instructions from tox to azpysdk. |
| eng/tools/azure-sdk-tools/ci_tools/environment_exclusions.py | Removes tox-environment filtering helper tied to the deleted harness. |
| eng/scripts/set_checks.py | Renames “tox env” handling to “checks” and updates output variable name. |
| eng/scripts/invoke-tox-parallel.ps1 | Deletes legacy tox parallel dispatcher script. |
| eng/regression_tools.txt | Removes tox pin from regression tooling requirements. |
| eng/ci_tools.txt | Removes tox pin from CI tooling requirements. |
| eng/pipelines/templates/steps/run_pyright.yml | Removes TOX-specific env overrides from pyright step. |
| eng/pipelines/templates/steps/run_pylint.yml | Removes TOX-specific env overrides from pylint step. |
| eng/pipelines/templates/steps/run_mypy.yml | Removes TOX-specific env overrides from mypy step. |
| eng/pipelines/templates/steps/run_breaking_changes.yml | Removes TOX-specific env overrides from breaking-changes step. |
| eng/pipelines/templates/steps/run_black.yml | Removes TOX-specific env overrides from black step. |
| eng/pipelines/templates/steps/run_bandit.yml | Removes TOX-specific env overrides from bandit step. |
| eng/pipelines/templates/steps/build-test.yml | Renames parameter ToxTestEnv → CheckEnv and uses --checks accordingly. |
| eng/pipelines/templates/steps/build-extended-artifacts.yml | Removes TOX-specific env overrides from docs build step. |
| eng/pipelines/templates/steps/analyze.yml | Removes TOX-specific env overrides from analysis steps. |
| eng/pipelines/templates/stages/archetype-sdk-tests.yml | Renames stage parameter ToxTestEnv → CheckEnv. |
| eng/pipelines/templates/jobs/live.tests.yml | Renames job parameter ToxTestEnv → CheckEnv. |
| eng/pipelines/templates/jobs/ci.tests.yml | Wires CheckEnv from $(checks) instead of $(toxenv). |
Comments suppressed due to low confidence (1)
scripts/devops_tasks/dispatch_tox.py:1
- This script is being deleted, but there are still pipeline definitions in the repo that invoke
scripts/devops_tasks/dispatch_tox.py(e.g.,eng/pipelines/generate-all-docs.yml,eng/pipelines/templates/jobs/tests-nightly-python.yml, andeng/pipelines/templates/steps/release-candidate-steps.yml). Removing it without updating/removing those callers will break those pipelines. Either update those pipelines to useeng/scripts/dispatch_checks.py/azpysdk, or keep a small compatibility shim that forwards to the new entrypoint.
You can also share your feedback on Copilot code review. Take the survey.
Comment on lines
30
to
34
| script: >- | ||
| cd ./sdk/cosmos/azure-cosmos | ||
| pip install tox==4.5.0 | ||
| tox -c ../../../eng/tox/tox.ini --root . -e whl -- -k 'not cosmosEmulator and not cosmosMultiRegion and not cosmosCircuitBreaker and not cosmosCircuitBreakerMultiRegion' | ||
| azpysdk whl --pytest-args -k 'not cosmosEmulator and not cosmosMultiRegion and not cosmosCircuitBreaker and not cosmosCircuitBreakerMultiRegion' | ||
| env: |
Member
Author
There was a problem hiding this comment.
I don't actually know where this yml file is used
Comment on lines
33
to
38
| def change_log_new(package_folder: str, lastest_pypi_version: bool) -> str: | ||
| os.chdir(package_folder) | ||
| cmd = f"{sys.executable} -m tox run -c ../../../eng/tox/tox.ini --root . -e breaking -- --changelog " | ||
| cmd = "azpysdk breaking --changelog" | ||
| if lastest_pypi_version: | ||
| cmd += "--latest-pypi-version" | ||
| cmd += " --latest-pypi-version" | ||
| try: |
Member
Author
There was a problem hiding this comment.
I wasn't sure about this but it def can't be invoked as <executable> -m azpysdk bc it's not a module
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related to #42858
usages of tox addressed:
filter_tox_environment_stringfunction fromenvironment_exclusions.pyci_tools.txtregression_tools.txttodo in a separate PR
extend_skip_globin 3 pyproject.tomlseng/toxfolderpipeline check